@import "variables.scss";

small, .small {
    font-size: $font-size-small;
}

.bg-primary {
    @include themify($themes) {
        background-color: themed('primaryColor') !important;
    }
}

.bg-success {
    @include themify($themes) {
        background-color: themed('successColor') !important;
    }
}

.bg-danger {
    @include themify($themes) {
        background-color: themed('dangerColor') !important;
    }
}

.bg-info {
    @include themify($themes) {
        background-color: themed('infoColor') !important;
    }
}

.bg-warning {
    @include themify($themes) {
        background-color: themed('warningColor') !important;
    }
}

.text-primary {
    @include themify($themes) {
        color: themed('primaryColor') !important;
    }
}

.text-success {
    @include themify($themes) {
        color: themed('successColor') !important;
    }
}

.text-muted {
    @include themify($themes) {
        color: themed('mutedColor') !important;
    }
}

.text-default {
    @include themify($themes) {
        color: themed('textColor') !important;
    }
}

.text-danger {
    @include themify($themes) {
        color: themed('dangerColor') !important;
    }
}

.text-info {
    @include themify($themes) {
        color: themed('infoColor') !important;
    }
}

.text-warning {
    @include themify($themes) {
        color: themed('warningColor') !important;
    }
}

.text-center {
    text-align: center;
}

.font-weight-semibold {
    font-weight: 600;
}

p.lead {
    font-size: $font-size-large;
    margin-bottom: 20px;
    font-weight: normal;
}

.flex-right {
    margin-left: auto;
}

.flex-bottom {
    margin-top: auto;
}

.no-margin {
    margin: 0 !important;
}

.no-vmargin {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.no-vpad {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.display-block {
    display: block !important;
}

.monospaced {
    font-family: $font-family-monospace;
}

.show-whitespace {
    white-space: pre-wrap;
}

.img-responsive {
    display: block;
    max-width: 100%;
    height: auto;
}

.img-rounded {
    border-radius: 6px;
}

.sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    border: 0 !important;
}

.password-wrapper {
    word-break: break-all;
    white-space: pre-wrap;
    min-width: 0;
}

.password-number {
    @include themify($themes) {
        color: themed('passwordNumberColor');
    }
}

.password-special {
    @include themify($themes) {
        color: themed('passwordSpecialColor');
    }
}

#duo-frame {
    background: url('../images/loading.svg') 0 0 no-repeat;
    width: 100%;
    height: 470px;
    margin-bottom: -10px;

    iframe {
        width: 100%;
        height: 100%;
        border: none;
    }
}

app-root > #loading {
    display: flex;
    text-align: center;
    justify-content: center;
    align-items: center;
    height: 100%;
    width: 100%;
    color: $text-muted;

    @include themify($themes) {
        color: themed('mutedColor');
    }
}

app-vault-icon {
    display: flex;
}

.logo-image {
    margin: 0 auto;
    width: 142px;
    height: 21px;
    background-size: 142px 21px;
    background-repeat: no-repeat;
    @include themify($themes) {
        background-image: url('../images/logo-' + themed('logoSuffix') + '@2x.png');
    }
    @media (min-width: 219px) {
        width: 189px;
        height: 28px;
        background-size: 189px 28px;
    }
    @media (min-width: 314px) {
        width: 284px;
        height: 43px;
        background-size: 284px 43px;
    }
}

[hidden] {
    display: none !important;
}

.draggable {
    cursor: move;
}
